Moving my blog to 11ty and Cloudflare Pages
I decided to move my blog away from Bear Blog to my own site built on 11ty and hosted on Cloudflare Pages.
I still very much appreciate and admire Bear Blog. It helped me get back into blogging for the nth time by offering a very low barrier to entry, got me some readers through its discovery pages, and gave me a little community of bloggers to participate in. Thank you, Herman!
I decided to move for a few reasons.
Terminal-driven workflow
I want to be able to update my blog remotely over SSH. I'm often writing on my work laptop because it's often the computer I have with me. Meanwhile, I decided not to keep any of my personal data on my work laptop, so I now edit my personal stuff — my Obsidian vault, my blog, etc. — by SSHing into my home computer.
Now, I could just write remotely and then copy/paste into the Bear Blog web editor, and I have done that many times. However, pasting into a web browser on my company laptop now triggers a popup asking me to attest that I'm not doing anything untoward with company data. That's fine I guess, but it'd be smart to assume that my company may also be scanning whatever I'm copying and pasting, and that makes me angsty.
So, I'd love to be able to edit a blog post over SSH and deploy via a git push. One of my older blogs worked this way, built with Hugo and hosted on Netlify, and I quite liked it.
I like static sites
I just do. I'm kind of an efficiency weirdo, and I find something soothing in the efficiency and simplicity of static sites. No database or CMS involved. Just text pumped through the digipipes.
I like git-driven workflows
Git (or substitute your VCS of choice) is great for lots of reasons:
- as a synchronization method between machines;
- as a backup method, pushing to one or more remotes;
- as a navigable, searchable, virtually infinite history of changes;
- as a way to find when/how a bug was introduced and fix it;
- as an "Oh shit, undo! Undo!" system;
- as a "Let's go back to that old color scheme" option;
- as an "I'm gonna go all mad-scientist in another branch" enabler;
- etc. etc.
I like locally-driven workflows
In combination with git, especially.
Let's say I'm on an airplane with no internet access.
I want to be able to wrench on my blog, preview all the changes locally, make git commits as I progress, and then, when I land and hit the airport or hotel wifi, simply git push to deploy everything in one go.
I love that.
I like control and portability
When my blog is a bunch of files on disk, I have maximum control over it. I can control how it's backed up, move it between hosting providers, search it with amazing tools like ripgrep, do global find-and-replace operations, and so on.
I also don't have to worry about whether a theoretically portable export from a blogging service will actually work down the line.
For example, while my hat is off to Bear Blog, there were issues with my blog's Markdown export.
The title: frontmatter values weren't wrapped in quotes, so any blog title with a semi-colon or double quotation mark would break the 11ty build.
Also, the tags: frontmatter values were simply comma-separated without surrounding brackets, which isn't proper syntax for a YAML list.
I'm pretty sure that syntax parses to a single string rather than an array.
I had to go through and fix all of those, too.
Another issue is that Bear uses /feed/ as the RSS feed URL.
I now need to redirect that to a file, like /feed/rss.xml so I don't break current subscriptions.
Fortunately, Cloudflare Pages has redirects, and hopefully they'll work.
Finally, I assume I'll need to move my blog eventually. Herman has wonderful intentions for Bear Blog, and I believe them. But he's one human. He might need to adjust those intentions due to changes in life circumstances. That would be thoroughly reasonable and forgivable. Cloudflare could change its terms or product. Or the most common reason people move their blogs: boredom. 😉
These are all things I don't have to worry much about when I own the raw data and build pipeline.
No shade thrown
I'll close by saying: none of this is an indictment of Bear or using that type of managed blogging provider. I happen to enjoy wrenching on an SSG blog because I'm that flavor of geek. I'd guess that most bloggers would rather not bother. Once again, I'm grateful to Bear for not only getting me back into blogging, but getting me to this point where I care enough about my blog to go through all this trouble of moving it.
- ← Previous
Obsidian Sync is great